//package gw.com.android.ui.home;
//
//import android.content.Context;
//import android.content.Intent;
//import android.os.AsyncTask;
//import android.os.Bundle;
//import android.os.Handler;
//import android.support.v4.app.FragmentActivity;
//import android.support.v4.view.ViewPager;
//import android.text.TextUtils;
//import android.util.Log;
//import android.view.View;
//import android.widget.ImageView;
//import android.widget.LinearLayout;
//import android.widget.RelativeLayout;
//import android.widget.TextView;
//
//import com.gwtsz.android.rxbus.RxBus;
//import com.gwtsz.gts2.hx.R;
//import com.youth.banner.Banner;
//import com.youth.banner.BannerConfig;
//import com.youth.banner.listener.OnBannerListener;
//import com.youth.banner.view.BannerViewPager;
//
//import org.json.JSONObject;
//
//import java.util.ArrayList;
//import java.util.List;
//
//import butterknife.BindView;
//import butterknife.ButterKnife;
//import butterknife.OnClick;
//import gw.com.android.app.ActivityManager;
//import gw.com.android.app.AppContances;
//import gw.com.android.app.AppMain;
//import gw.com.android.app.GTConfig;
//import gw.com.android.greendao.NotifyDataHelper;
//import gw.com.android.model.ConfigSettingDeal;
//import gw.com.android.model.ConfigType;
//import gw.com.android.model.ConfigUtil;
//import gw.com.android.model.DataManager;
//import gw.com.android.presenter.AdsConfigPresenter;
//import gw.com.android.presenter.AdsData;
//import gw.com.android.presenter.FMPresenter;
//import gw.com.android.presenter.HomeAriticlePresenter;
//import gw.com.android.presenter.HomePresenter;
//import gw.com.android.presenter.http.HomeGainListRequest;
//import gw.com.android.presenter.http.HomePlatformOperationDataRequest;
//import gw.com.android.presenter.http.HomeTradeRequest;
//import gw.com.android.presenter.http.HomeTradeVaneRequest;
//import gw.com.android.presenter.http.JiepanRequest;
//import gw.com.android.terminal.AppTerminal;
//import gw.com.android.ui.BaseActivity;
//import gw.com.android.ui.MainActivity;
//import gw.com.android.ui.bulletin.NotifyCentreActivity;
//import gw.com.android.ui.news.StrategyNewsActivity;
//import gw.com.android.ui.onlive.MainLiveFragment;
//import gw.com.android.ui.views.FMFloatView;
//import gw.com.android.ui.views.MyScrollView;
//import gw.com.android.ui.views.NoticeView;
//import gw.com.android.ui.views.StrategyTextView;
//import gw.com.android.utils.GtsImageLoader;
//import gw.com.android.utils.MobclickEventUtlis;
//import gw.com.android.utils.PackStatis;
//import gw.com.jni.library.terminal.GTSConst;
//import io.reactivex.android.schedulers.AndroidSchedulers;
//import io.reactivex.annotations.NonNull;
//import io.reactivex.disposables.Disposable;
//import io.reactivex.functions.Consumer;
//import www.com.library.app.PushMsgTabFragment;
//import www.com.library.interfaces.ReqCallBack;
//import www.com.library.model.DataItemDetail;
//import www.com.library.util.CommonUtils;
//import www.com.library.view.PullDownElasticImp;
//import www.com.library.view.PullDownScrollView;
//import www.com.library.view.ScrollPoints;
//import www.com.library.view.TintImageView;
//
///**
// * Created by reeta.zou on 2016/5/10.
// * 首页界面
// * <p>
// * 自 2018年11月2日 15:01:26 起，作废，仅做参考，因为首页全部重建，只保留了部分
// * 新的首页 请看 HomeFragment.java
// */
//public class HomeFragmentBackup extends PushMsgTabFragment implements PullDownScrollView.RefreshListener {
//
//    @BindView(R.id.refresh_root)
//    PullDownScrollView mPullDownScrollView;
//    @BindView(R.id.login_layout)
//    View mLoginLayout;
//    @BindView(R.id.view_stub)
//    View mStub;
//    @BindView(R.id.sign_in_button)
//    TextView mLoginBtn;
//    @BindView(R.id.product_pager)
//    BannerViewPager productPager;
//    @BindView(R.id.product_point)
//    ScrollPoints productPoint;
//    @BindView(R.id.ll_trade_news)
//    HomeTradeNewsView mHomeTradeNewsView;
//    @BindView(R.id.ll_strategy)
//    LinearLayout llStrategy;
//    @BindView(R.id.home_strategy_content)
//    StrategyTextView strategyContent;
//    @BindView(R.id.home_notice)
//    NoticeView noticeView;
//    @BindView(R.id.scrollview)
//    MyScrollView scrollView;
//    @BindView(R.id.title_bar)
//    RelativeLayout titleBar;
//    @BindView(R.id.video)
//    FMFloatView fmView;// 首页Fragment内的FM悬浮图标
//    @BindView(R.id.rl_float_ads)
//    RelativeLayout rl_float_ads;
//    @BindView(R.id.iv_float_ads)
//    ImageView iv_float_ads;
//    @BindView(R.id.iv_close)
//    ImageView iv_close;
//    @BindView(R.id.red_point1)
//    View redPoint1;
//    @BindView(R.id.red_point2)
//    View redPoint2;
//    @BindView(R.id.tv_home_bottom_ads)
//    TextView tv_home_bottom_ads;
//    @BindView(R.id.home_open_account)
//    View viewOpenAccount;
//    @BindView(R.id.home_open_account_real_desc)
//    TextView tvOpenRealDesc;
//    @BindView(R.id.home_open_account_demo_desc)
//    TextView tvOpenDemoDesc;
//
//    Banner banner; //广告轮播控件
//    TintImageView mMiddleAdsView;//中间广告
//    //  首页解盘
//    HomeJiepanView mHomeJiePanView;
//    //  首页交易风向标，点了之后可以旋转的卡片
//    HomeTradingVaneView mHomeTradingVaneView;
//    TextView home_trading_title_name;
//    int p1 = 0, p1_2 = 0, q1, q1_2;// 正面和反面的看空数据
//    //首页-盈利榜
//    HomeGainListView mHomeGainListView;
//
////    private int requestRepeatDelay = 0 * 1000;//部分请求失败的时候，设定一个重新请求的延迟
//
//    private String mZoneType = GTSConst.ZONE_TYPE_SELF + "";
//    private HomePresenter homePresenter;
//    private HomeAriticlePresenter ariticlePresenter = new HomeAriticlePresenter();
//    private ProductPagerAdapter productAdapter;
//    private boolean hasJiePan = true;
//    private JiepanRequest jiepanRequest;
//    private HomeTradeRequest homeTradeRequest;
//    private HomeTradeVaneRequest homeTradeVaneRequest;
//    private HomeGainListRequest homeGainListRequest;
//    private HomePlatformOperationDataRequest homePlatformOperationDataRequest;
//    private Runnable task;
//
//    public static HomeFragmentBackup newInstance() {
//        return new HomeFragmentBackup();
//    }
//
//    @Override
//    protected int getLayoutId() {
//        return R.layout.fragment_main_home;
//    }
//
//    @Override
//    protected void initLayoutView() {
//        homePresenter = new HomePresenter(getActivity());
//        ButterKnife.bind(this, mRootView);
//        mPullDownScrollView.setRefreshListener(this);
//        mPullDownScrollView.setPullDownElastic(new PullDownElasticImp(getContext()));
//
//        BaseActivity activity = (BaseActivity) getActivity();
//        if (null != activity) {
//            activity.setTransparentBar(true);
//        }
//
//        banner = (Banner) mRootView.findViewById(R.id.home_banner);
//        mMiddleAdsView = (TintImageView) mRootView.findViewById(R.id.middle_ads_view);
//
//        productAdapter = new ProductPagerAdapter(getActivity(), mZoneType);
//        productPager.setAdapter(productAdapter);
//        productPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
//            @Override
//            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
//            }
//
//            @Override
//            public void onPageSelected(int position) {
//                productPoint.changeSelectedPoint(position);
//            }
//
//            @Override
//            public void onPageScrollStateChanged(int state) {
//            }
//        });
//        productPoint.initPoints(getActivity(), productAdapter.getCount(), 0, R.mipmap.a_market_slip, R.mipmap.a_market_slip_p, false);
//        mMiddleAdsView.setVisibility(View.GONE);
//        if (GTConfig.instance().getAccountType() == GTConfig.ACC_TYPE_GUEST) {
//            viewOpenAccount.setVisibility(View.VISIBLE);
//        }
//
//        mHomeJiePanView = (HomeJiepanView) mRootView.findViewById(R.id.homeJiePanView);
//        mHomeJiePanView.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View v) {
//                FragmentActivity activity = getActivity();
//                if (activity != null && !activity.isFinishing() && (activity instanceof MainActivity)) {
//                    PackStatis.getToService("clickactalk", PackStatis.EventCategory.HOME.getValue(), null, null);
//                    ((MainActivity) activity).setTabFragment(ConfigType.TAB_ONLIVE_TAG, String.valueOf(MainLiveFragment.JIEPAN));
//                }
//            }
//        });
//        llStrategy.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View v) {
//                PackStatis.getToService("clicktradest", PackStatis.EventCategory.HOME.getValue(), null, null);
//                ariticlePresenter.changeLocalAriticleNotNew();
//                strategyContent.setText(ariticlePresenter.getContent(), false);
//                startActivity(new Intent(getContext(), StrategyNewsActivity.class));
//            }
//        });
//        fmView.setInHome(false, false);
//        scrollView.setScrollListener(new MyScrollView.OnScrollListener() {
//            @Override
//            public void onScroll(int distance) {
//                scroll();
//            }
//        });
//
//        mHomeTradingVaneView = (HomeTradingVaneView) mRootView.findViewById(R.id.homeTradingVaneView);
//        home_trading_title_name = (TextView) mRootView.findViewById(R.id.home_trading_title_name);
//        home_trading_title_name.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View v) {
//                if (HomeTradingVaneView.ifDebug) {
//                    mHomeTradingVaneView.refreshDataForDemo((p1++) / 100f, (p1_2++) / 100f, (q1++) / 100f, (q1_2++) / 100f);
//                }
//            }
//        });
//        mHomeGainListView = (HomeGainListView) mRootView.findViewById(R.id.ll_gain_list_main);
//    }
//
//    @Override
//    protected void initViewData() {
//        homeTradeRequest = new HomeTradeRequest();
//        HomeTradeRequest.HomeTradeData lastNewsData = homeTradeRequest.fetchLocal();
//        if (lastNewsData != null) {
//            mHomeTradeNewsView.refresh(lastNewsData);
//            FMPresenter.getInstance().initArticleId(lastNewsData.fmArticleId);
//        } else {
//            mHomeTradeNewsView.refresh(null);
//        }
//
//        homeTradeVaneRequest = new HomeTradeVaneRequest();
//        Log.d("tradingVaneTag", "初始化，默认取缓存");
//        loadCacheTradeVane();
//
//        homeGainListRequest = new HomeGainListRequest();
//        HomeGainListRequest.HomeGainListData homeGainListData = homeGainListRequest.fetchLocal();//加载缓存
//        mHomeGainListView.refresh(homeGainListData);
//
//        homePlatformOperationDataRequest = new HomePlatformOperationDataRequest();
//        HomePlatformOperationDataRequest.PlatformOperationData homePlatformOperationData = homePlatformOperationDataRequest.fetchLocal();//加载缓存
//        mHomeGainListView.refreshPlatformOperationData(homePlatformOperationData);
//
//        initJiePanView();
//        refreshHomes();
//        refreshHomeAds();
//        new RedPointTask().execute();
//    }
//
//    private void scroll() {
//        if (banner == null || titleBar == null) {
//            return;
//        }
//        int[] location = new int[2];
//        banner.getLocationInWindow(location);
//        float y = -location[1];
//        int height = banner.getHeight() - titleBar.getHeight();
//        float percent = y >= height ? 1 : y / height;
//        titleBar.setAlpha(percent);
//    }
//
//    private void initJiePanView() {
//        JSONObject jsonObject = ConfigUtil.instance().mConfigObject.optJSONObject(ConfigType.JIEPAN_TAG);
//        if (jsonObject != null) {
//            hasJiePan = jsonObject.optBoolean(ConfigType.CONFIG_TYPE_HAS_NEED_TAG, true);
//            if (!hasJiePan) {
//                mHomeJiePanView.setVisibility(View.GONE);
//                return;
//            }
//            String title = jsonObject.optString(ConfigType.CONFIG_TYPE_TYPE_DES_TAG);
//            if (!TextUtils.isEmpty(title)) {
//                mHomeJiePanView.setTitle(title);
//            }
//        }
//    }
//
//    /**
//     * 开户栏根据账号类型设置处理
//     */
//    private void setLoginLayout() {
//        //底部登录开户按钮逻辑处理
//        if (GTConfig.instance().getAccountType() == GTConfig.ACC_TYPE_REAL) {
//            hideLoginLayout();
//            mStub.setVisibility(View.GONE);
//        } else if (GTConfig.instance().getAccountType() == GTConfig.ACC_TYPE_GUEST) {
//            showLoginLayout();
//            mStub.setVisibility(View.VISIBLE);
//            mLoginBtn.setOnClickListener(new View.OnClickListener() {
//                @Override
//                public void onClick(View v) {
//                    if (CommonUtils.isFastDoubleClick()) {
//                        return;
//                    }
//                    PackStatis.getToService(PackStatis.EventAction.CLICKREG.getValue(), PackStatis.EventCategory.HOME.getValue(), null, null);
//                    ActivityManager.showLoginActivity(getActivity());
//                }
//            });
//        } else {
//            hideLoginLayout();
//            mStub.setVisibility(View.GONE);
//        }
//    }
//
//    public void requestCoureseData() {
//        if (!hasJiePan) {
//            return;
//        }
//        if (jiepanRequest == null) {
//            jiepanRequest = new JiepanRequest();
//            jiepanRequest.setListener(new JiepanRequest.OnJiepanListener() {
//                @Override
//                public void onCourse(JiepanRequest.CourseData course) {
//                    if (mHomeJiePanView != null) {
//                        mHomeJiePanView.refreshCourse(course);
//                    }
//                }
//
//                @Override
//                public void onTeacher(JiepanRequest.TeacherData teacher) {
//                    if (mHomeJiePanView != null) {
//                        mHomeJiePanView.refreshTeacher(teacher);
//                    }
//                }
//
//                @Override
//                public void onFailure() {
//                    if (mHomeJiePanView != null) {
//                        mHomeJiePanView.refreshFailure();
//                    }
//                }
//            });
//        }
//        jiepanRequest.getCourse();
//    }
//
//    public void requestArticle() {
//        ariticlePresenter.acquireAriticle(new ReqCallBack<HomeAriticlePresenter.Data>() {
//            @Override
//            public void onReqSuccess(HomeAriticlePresenter.Data result) {
//                if (llStrategy != null && result != null) {
//                    llStrategy.setVisibility(View.VISIBLE);
//                    strategyContent.setText(result.content, result.isNew);
//                }
//            }
//
//            @Override
//            public void onReqFailed(String errorMsg) {
//            }
//        });
//    }
//
//    public void requestTradeNews() {
//        if (homeTradeRequest == null) {
//            homeTradeRequest = new HomeTradeRequest();
//        }
//        homeTradeRequest.call(new ReqCallBack<HomeTradeRequest.HomeTradeData>() {
//            @Override
//            public void onReqSuccess(HomeTradeRequest.HomeTradeData result) {
//                if (mHomeTradeNewsView != null) {
//                    mHomeTradeNewsView.refresh(result);
//                } else {
//                    loadCacheTradeNews();
//                }
//                if (result != null) {
//                    FMPresenter.getInstance().setArticleId(result.fmArticleId);
//                }
//
//            }
//
//            @Override
//            public void onReqFailed(String errorMsg) {
//                Log.d("TradeNewsTag", "网络请求失败，加载缓存");
////                loadCacheTradeNews();
//                // 如果遇到请求失败，则5秒之后再次请求
////                // 是因为有时候这个接口会调用失败（好像是网络原因），所以重新请求，直到正常获取数据
////                Handler mHandler = AppMain.getApp().getHandler();
////                mHandler.postDelayed(new Runnable() {
////                    @Override
////                    public void run() {
////                        Log.d("TradeNewsTag", "mHandler重新执行查询");
////                        requestTradeNews();
////                    }
////                }, requestRepeatDelay);
//            }
//        });
//    }
//
//    private void loadCacheTradeNews() {
//        HomeTradeRequest.HomeTradeData result = homeTradeRequest.fetchLocal();
//        mHomeTradeNewsView.refresh(result);
//    }
//
//    public void requestTradeVane() {
//        if (homeTradeVaneRequest == null) {
//            homeTradeVaneRequest = new HomeTradeVaneRequest();
//        }
//        homeTradeVaneRequest.call(new ReqCallBack<HomeTradeVaneRequest.HomeTradeVaneData>() {
//            @Override
//            public void onReqSuccess(HomeTradeVaneRequest.HomeTradeVaneData result) {//实验结果：这个回调果然是交给了主线程
//                if (mHomeTradingVaneView != null) {
//                    Log.d("tradingVaneTag", "来自网络");
//                    mHomeTradingVaneView.refresh(result);
//                } else {
//                    Log.d("tradingVaneTag", "网络取为空，加载缓存");
//                    loadCacheTradeVane();
//                }
//            }
//
//            @Override
//            public void onReqFailed(String errorMsg) {//网络请求失败则加载缓存
//                Log.d("tradingVaneTag", "网络请求失败，加载缓存");
//            }
//        });
//    }
//
//    private void loadCacheTradeVane() {
//        HomeTradeVaneRequest.HomeTradeVaneData homeTradeVaneData = homeTradeVaneRequest.fetchLocal();
//        mHomeTradingVaneView.refresh(homeTradeVaneData);
//    }
//
//    private class RedPointTask extends AsyncTask<Void, Void, Integer> {
//        @Override
//        protected Integer doInBackground(Void... voids) {
//            return NotifyDataHelper.getUnreadCount();
//        }
//
//        @Override
//        protected void onPostExecute(Integer result) {
//            refreshRedPoint(result);
//        }
//    }
//
//    public void requestGainList() {
//        if (homeGainListRequest == null) {
//            homeGainListRequest = new HomeGainListRequest();
//        }
//        homeGainListRequest.call(new ReqCallBack<HomeGainListRequest.HomeGainListData>() {
//            @Override
//            public void onReqSuccess(HomeGainListRequest.HomeGainListData result) {
//                if (mHomeGainListView != null) {
//                    mHomeGainListView.refresh(result);
//                } else {
//                    loadCacheGainList();
//                }
//            }
//
//            @Override
//            public void onReqFailed(String errorMsg) {
//                Log.d("gainListTag", "网络请求失败，加载缓存");
////                loadCacheGainList();
//
//                //下面的代码
////                // 是因为有时候这个接口会调用失败（好像是网络原因），所以重新请求，直到正常获取数据
////                Handler mHandler = AppMain.getApp().getHandler();
////                mHandler.postDelayed(new Runnable() {
////                    @Override
////                    public void run() {
////                        Log.d("gainListTag", "mHandler重新执行查询");
////                        requestGainList();
////                    }
////                }, requestRepeatDelay);
//            }
//        });
//    }
//
//    private void loadCacheGainList() {
//        HomeGainListRequest.HomeGainListData result = homeGainListRequest.fetchLocal();
//        mHomeGainListView.refresh(result);
//    }
//
//    public void requestPlatformOperationData() {
//        if (homePlatformOperationDataRequest == null) {
//            homePlatformOperationDataRequest = new HomePlatformOperationDataRequest();
//        }
//        homePlatformOperationDataRequest.call(new ReqCallBack<HomePlatformOperationDataRequest.PlatformOperationData>() {
//            @Override
//            public void onReqSuccess(HomePlatformOperationDataRequest.PlatformOperationData result) {
//                if (mHomeGainListView != null) {
//                    mHomeGainListView.refreshPlatformOperationData(result);
//                } else {
//                    loadPlatformDataList();
//                }
//            }
//
//            @Override
//            public void onReqFailed(String errorMsg) {
//                Log.d("PlatformOperationTag", "网络请求失败，加载缓存");
//            }
//        });
//    }
//
//    private void loadPlatformDataList() {
//        HomePlatformOperationDataRequest.PlatformOperationData result = homePlatformOperationDataRequest.fetchLocal();
//        mHomeGainListView.refreshPlatformOperationData(result);
//    }
//
//    @Override
//    public void onHiddenChanged(boolean hidden) {
//        super.onHiddenChanged(hidden);
//        if (!hidden) {
//            BaseActivity activity = (BaseActivity) getActivity();
//            if (null != activity) {
//                if (ConfigUtil.instance().getAdsType() == AppContances.HOME_ADS_NO_TITLE_TYPE) {
//                    activity.setTransparentBar(true);
//                } else {
//                    activity.setTransparentBar(false);
//                }
//            }
//            setLoginLayout();
//            onSendQuote();
//            if (null != banner) {
//                banner.startAutoPlay();
//            }
//            refreshHomes();
//        } else {
//            if (null != banner) {
//                banner.stopAutoPlay();
//            }
//        }
//    }
//
//    @Override
//    public void onRefresh(PullDownScrollView view) {
//        refreshHomes();
//        AppMain.getApp().getHandler().postDelayed(new Runnable() {
//            @Override
//            public void run() {
//                if (null != mPullDownScrollView) {
//                    mPullDownScrollView.finishRefresh();
//                }
//            }
//        }, 500);
//    }
//
//    @Override
//    public void onResume() {
//        super.onResume();
//        setLoginLayout();
//        if (!isHidden()) {
//            refreshHomes();
//        }
//        if (null != banner) {
//            banner.startAutoPlay();
//        }
//    }
//
//    @Override
//    public void onStop() {
//        super.onStop();
//        if (null != banner) {
//            banner.stopAutoPlay();
//        }
//    }
//
//    @Override
//    public void onSendQuote() {
//        AppTerminal.instance().sendQuoteSubscribe(DataManager.instance().getQuoteSubscribeCodes(mZoneType));
//    }
//
//    /**
//     * 连上网络后加载数据
//     */
//    @Override
//    public void registerRxBus() {
//        Disposable netRegister = RxBus.getInstance().registertoObservableSticky(GTSConst.REPLY_NETWORK_STATE + "", Boolean.class).observeOn(AndroidSchedulers.mainThread())
//                .subscribe(new Consumer<Boolean>() {
//
//                    @Override
//                    public void accept(@NonNull Boolean isNetWork) throws Exception {
//                        if (isNetWork) {
//                            refreshHomes();
//                            if (noticeView.canShow()) {
//                                noticeView.setVisibility(View.VISIBLE);
//                            }
//                        } else {
//                            noticeView.setVisibility(View.GONE);
//                        }
//                    }
//                });
//
//        bindSubscription(netRegister);
//
//        Disposable quoteAllRegister = RxBus.getInstance().registertoObservableSticky(GTSConst.REPLY_SYMBOL_ALLLIST + "", Bundle.class).observeOn(AndroidSchedulers.mainThread())
//                .subscribe(new Consumer<Bundle>() {
//
//                    @Override
//                    public void accept(@NonNull Bundle bundle) throws Exception {
//                        onSymbolNotify();
//                    }
//                });
//        bindSubscription(quoteAllRegister);
//
//        Disposable quoteListRegister = RxBus.getInstance().registertoObservableSticky(GTSConst.REPLY_SYMBOL_LIST + "", Bundle.class).observeOn(AndroidSchedulers.mainThread())
//                .subscribe(new Consumer<Bundle>() {
//
//                    @Override
//                    public void accept(@NonNull Bundle bundle) throws Exception {
//                        onSymbolNotify();
//                    }
//                });
//
//        bindSubscription(quoteListRegister);
//
//        Disposable quoteUpdateRegister = RxBus.getInstance().register(GTSConst.REPLY_SYMBOL_UPDATE + "", DataItemDetail.class).observeOn(AndroidSchedulers.mainThread())
//                .subscribe(new Consumer<DataItemDetail>() {
//
//                    @Override
//                    public void accept(@NonNull DataItemDetail model) throws Exception {
//                        onSymbolNotify();
//                    }
//                });
//
//        bindSubscription(quoteUpdateRegister);
//
//        Disposable quoteTickRegister = RxBus.getInstance().register(GTSConst.REPLY_SYMBOL_TICK_UPDATE + "", DataItemDetail.class).observeOn(AndroidSchedulers.mainThread())
//                .subscribe(new Consumer<DataItemDetail>() {
//
//                    @Override
//                    public void accept(@NonNull DataItemDetail model) throws Exception {
//                        if (null != model) {
//                            if (null != productAdapter && isResumed() && !isHidden()) {
//                                productAdapter.refreshData(model);
//                            }
//                        }
//                    }
//                });
//
//        bindSubscription(quoteTickRegister);
//    }
//
//    /**
//     * 刷新行情界面数据
//     */
//    protected void refreshProduct() {
//        if (productAdapter == null || productPager == null) {
//            return;
//        }
//        productAdapter.refreshSortData();
//        productPoint.initPoints(getActivity(), productAdapter.getCount(), 0, R.mipmap.a_small_lip, R.mipmap.a_small_lip_p, false);
//    }
//
//    /**
//     * 刷新首页广告
//     */
//    public void refreshHomeAds() {
//        if (null == homePresenter) {
//            return;
//        }
//        AdsData bannerAd = AdsConfigPresenter.getInstance().getAd(AdsConfigPresenter.TYPE_HOME_BANNER);
//        if (bannerAd != null && bannerAd.adPics != null && !bannerAd.adPics.isEmpty()) {
//            List<String> imageUrls = new ArrayList<>();
//            for (AdsData.PicData data : bannerAd.adPics) {
//                imageUrls.add(data.url);
//            }
//            banner.setImages(imageUrls)
//                    .setImageLoader(new GtsImageLoader())
//                    .setOnBannerListener(new HomeBannerListener(bannerAd.adPics))
//                    .setIndicatorGravity(BannerConfig.RIGHT)
//                    .start();
//        }
//        AdsData middleAd = AdsConfigPresenter.getInstance().getAd(AdsConfigPresenter.TYPE_HOME_MIDDLE);
//        homePresenter.dealMiddleAdsData(getActivity(), middleAd, mMiddleAdsView);
//
//        AdsData floatAd = AdsConfigPresenter.getInstance().getAd(AdsConfigPresenter.TYPE_HOME_FLOAT);
//        homePresenter.dealFloatAdsData(getActivity(), floatAd, rl_float_ads, iv_float_ads, iv_close, HomePresenter.CONST_ADS_INDEX_HOME);
//
//        AdsData bottomAd = AdsConfigPresenter.getInstance().getAd(AdsConfigPresenter.TYPE_HOME_BOTTOM);
//        homePresenter.dealBottomAdsData(bottomAd, tv_home_bottom_ads);
//
//        AdsData openRealAds = AdsConfigPresenter.getInstance().getAd(AdsConfigPresenter.TYPE_HOME_OPEN_REAL);
//        homePresenter.dealOpenAccountAd(openRealAds, tvOpenRealDesc);
//
//        AdsData openDemoAds = AdsConfigPresenter.getInstance().getAd(AdsConfigPresenter.TYPE_HOME_OPEN_DEMO);
//        homePresenter.dealOpenAccountAd(openDemoAds, tvOpenDemoDesc);
//    }
//
//    @Override
//    public void onSymbolNotify() {
//        super.onSymbolNotify();
//        refreshProduct();
//        onSendQuote();
//    }
//
//    private void refreshHomes() {
//        refreshProduct();
//        requestCoureseData();
//        requestArticle();
//        requestTradeNews();
//        requestTradeVane();
//        requestGainList();
//        requestPlatformOperationData();
//        AdsConfigPresenter.getInstance().loadAds();
//        startTimer();
//    }
//
//    public void refreshRedPoint(int count) {
//        redPoint1.setVisibility(count > 0 ? View.VISIBLE : View.GONE);
//        redPoint2.setVisibility(count > 0 ? View.VISIBLE : View.GONE);
//    }
//
//    /**
//     * 首页不动时，每隔5分钟自动刷新一次数据
//     */
//    private void startTimer() {
//        if (task == null) {
//            task = new Runnable() {
//                @Override
//                public void run() {
//                    onTimer();
//                }
//            };
//        }
//        Handler mHandler = AppMain.getApp().getHandler();
//        mHandler.removeCallbacks(task);
//        mHandler.postDelayed(task, 3 * 60 * 1000);
//    }
//
//    private void onTimer() {
//        FragmentActivity activity = getActivity();
//        if (activity != null && !activity.isFinishing()) {
//            if (this.isResumed() && !this.isHidden() && !this.isRemoving()) {
//                refreshHomes();
//            }
//        }
//    }
//
//    @OnClick({R.id.contact_btn1, R.id.contact_btn2})
//    void onContactClick() {
//        ConfigSettingDeal mDeal = new ConfigSettingDeal();
//        if (ConfigUtil.instance().customerFunction() == 2) {
//            mDeal.openContact(getActivity(), ConfigType.HOME_CONTACT_TAG);
//        } else {
//            mDeal.openQQ(getActivity(), ConfigType.QQ_SOURCE_HOME);
//        }
//        PackStatis.getToService(PackStatis.EventAction.CLICKSERVICE.getValue(), PackStatis.EventCategory.HOME.getValue(), null, null);
//        MobclickEventUtlis.MobclickEventByAccountType(getActivity(), "home_contact");
//    }
//
//    @OnClick({R.id.remind1, R.id.remind2})
//    void onRemindClick() {
//        startActivity(new Intent(getContext(), NotifyCentreActivity.class));
//        Log.d("PackStatisTag", "首页通知");
//        PackStatis.getToService(PackStatis.EventAction.CLICKREMIND.getValue(), PackStatis.EventCategory.HOME.getValue(), null, null);
//    }
//
//    @OnClick(R.id.home_open_account_real)
//    void onCreateRealAccount() {
//        ActivityManager.showOpenAccount(getActivity(), ConfigType.ADD_LOGIN_REAL_TAG, getString(R.string.home_open_account_real));
//    }
//
//    @OnClick(R.id.home_open_account_demo)
//    void onCreateDemoAccount() {
//        ActivityManager.showOpenAccount(getActivity(), ConfigType.ADD_LOGIN_DEMO_TAG, getString(R.string.home_open_account_demo));
//    }
//
//    /**
//     * 首页轮播广告点击事件
//     */
//    private class HomeBannerListener implements OnBannerListener {
//
//        private final List<AdsData.PicData> mPicDatas;
//
//        HomeBannerListener(List<AdsData.PicData> picData) {
//            this.mPicDatas = picData;
//        }
//
//        @Override
//        public void OnBannerClick(int position) {
//            if (mPicDatas == null || mPicDatas.size() <= position) {
//                return;
//            }
//            AdsData.PicData picData = this.mPicDatas.get(position);
//            if (picData == null || TextUtils.isEmpty(picData.link)) {
//                return;
//            }
//            PackStatis.getToService(PackStatis.EventAction.CLICKBANNER.getValue() + "_" + position, PackStatis.EventCategory.HOME.getValue(), null, null);
//            String url = ConfigUtil.getDealStrUrl(picData.link);
//            DataItemDetail item = new ConfigSettingDeal().getItemValue(ConfigType.ADS_DETAIL_TAG, picData.title, url);
//            item.setBooleanValue(ConfigType.CONFIG_TYPE_TYPE_HASBACK_TAG, true);
//            ActivityManager.showWebPageActivity(getActivity(), item, AppMain.getAppString(R.string.btn_back));
//        }
//    }
//
//    private void showLoginLayout() {
//        RelativeLayout.LayoutParams param = (RelativeLayout.LayoutParams) mLoginLayout.getLayoutParams();
//        param.height = dp2px(getActivity(), 40);
//        mLoginLayout.requestFocus();
//    }
//
//    private void hideLoginLayout() {
//        RelativeLayout.LayoutParams param = (RelativeLayout.LayoutParams) mLoginLayout.getLayoutParams();
//        param.height = 0;
//        mLoginLayout.requestFocus();
//    }
//
//    private static int dp2px(Context mContext, float dp) {
//        return (int) (dp * mContext.getResources().getDisplayMetrics().density + 0.5f);
//    }
//}
